Mantle API

游戏优化技术

曾经有两个图形运算API在PC游戏领域争得火热,一个是Direct3D,另一个是OpenGL。Direct3D晚于OpenGL登场,却可以后发制人成为今天在PC游戏领域上的霸主;OpenGL曾经对Direct3D形成压倒性的优势,但由于开发上的不给力,如今已经转向专业图形领域发展,PC游戏上鲜见踪影。这个局面维持了好长一段时间,直到AMD在发布R9 290X/290显卡的时候才被打破,因为AMD在发布新显卡的同时还拿出了杀手锏级的游戏优化技术,那就是Mantle(地幔),定位与Direct3D、OpenGL相同的新型图形运算API。

概述
Mantle的字面意思是地幔,它与地壳、地核一样同属于地球内部组成的三个同心球体之一。在AMD看来,图形运算系统与地球的组成其实是相似的,位于表层的图形应用程序就是地壳,里层的地核就是GCN架构图形核心,连接两者的图形运算API以及硬件驱动程序则是地幔。因此Mantle的存在就和它的字面意思相同,是为了让图形应用程序与GCN架构图形核心形成软件和硬件上的连接,使得应用程序可以充分发挥GCN架构图形核心的性能。
AMD把Mantle定义为“游戏优化技术”,因此它的诞生显然是剑指游戏优化技术,最直接的对手就是微软的Direct3D。只是Direct3D已经耕耘多年,要论成熟度,Mantle显然不如Direct3D。那么AMD为什么那么有自信,认为游戏厂商会在使用Direct3D之余,还会对Mantle提供支持呢?
实际上,Direct3D虽然有很强的兼容性,但是从整个生态圈来说,却不如Mantle完整。正如地幔也分为上地幔和下地幔两部分,AMD的Mantle实际上也是由两部分组成的,其中“上地幔”是Mantle API,也就是属于图形运算API的级别;“下地幔”则是Mantle Driver,也就是我们常说的AMD Catalyst显卡驱动程序。微软对Direct3D生态圈的控制只能深入到“上地幔”的级别,而“下地幔”和“地核”部分则需要依靠显卡厂商的配合,而且为了兼容更多的设备,Direct3D对新技术和新设备的支持并不能马上到位,有可能让新设备上的特性得不到完全的发挥,从而限制了整套图形运算系统的运行效率。
AMD的Mantle则不同,由于组成“地幔”的Mantle API以及显卡驱动程序乃至“地核”的图形核心都是由AMD一手包办,开发“地壳”级图形应用程序时AMD也有提供全程的支持,因此基于Mantle开发的应用程序可以完全发挥出图形核心的全部性能。而且一旦AMD推出拥有新特性的图形核心时,Mantle API和Mantle Driver可以第一时间提供支持,并且让游戏开发商用上新的图形特性,这点比起更偏向于兼容性的Direct3D来说,确实是一个无可比拟的优势。
此外AMD的Mantle在功能和特性上是完全兼容Direct3D的,因此游戏开发商在使用Mantle开发游戏时,不用担心说Mantle版无法实现Direct3D版的某些特性,而且由于Mantle有很强的硬件针对性,可以比Direct3D更好地发挥出GCN架构图形核心的性能,因此使用Mantle来开发游戏,完全可以做到让高端显卡才能流畅运行的Direct3D游戏,如今只需要中端主流显卡就能有满意的体验。这也是为什么AMD会把Mantle称之为“游戏优化技术”的原因。
游戏应用
现在已经有不少游戏大作提供了Mantle技术的支持,已经发布的包括有《龙腾世纪3:审判》、《植物大战僵尸:花园战争》、《神偷4》、《狙击精英3》、《文明:超越地球》等,还有不少游戏是确定支持Mantle但尚未发布的,按照AMD的说法,他们已经和多家游戏厂商达成合作,未来将会推出更多基于Mantle技术的游戏作品。
测试平台以及相关设置说明
测试平台使用超频至4.0GHz的Core i7-3770K(四核八线程)打造,搭配双通道DDR3-2666内存(实际运行在1600MHz),总容量为8GB(4GB*2),参测显卡共计有8款,包括有GTX 780 Ti/780/760以及R9 290X/290/280X/280/270X等产品,其中只有GTX 760/GTX 780 Ti/R9 290X/R9 290四款显卡为公版产品,其余均为非公版产品,相关的频率参数已经在上表列出。
测试时NVIDIA显卡使用GeForce 344.75 WHQL驱动,AMD显卡则使用Catalyst 14.11.2 Beta驱动,操作系统为Windows 7 SP1 64位版本。参测软件共计有五款,分别是《神偷4》、《文明:超越地球》、《狙击精英3》以及《Star Swarm》,其中前四款为已经发布的游戏作品,《Star Swarm》则是Mantle API的首款测试用演示程序。
测试程序
《Star Swarm Performance Demo》(以下简称《Star Swarm》)是一款采用Nitrous引擎打造的Benchmark程序,原生支持Mantle API以及Direct3D,分别测试两种模式下的系统性能。其测试场景一共有五项,并提供有四种不同级别的画质选择,测试时为我们选用Follow场景以及最高级别的Extreme画质。
Direct3D模式下《Star Swarm》截图
Mantle模式下《Star Swarm》截图
对比Mantle API和Direct3D下的Extreme画质截图在,可以看出两者的画面基本上是没有区别的,毕竟Mantle的作用是在不影响画质的前提下改善系统效率。
《Star Swarm》在推出之后一直有进行更新,不过作为Mantle API的“御用测试工具”,它的更新内容基本上都集中在Mantle模式上,Direct3D模式与Mantle模式之间的帧数差距越拉越大。在现有最新版本的测试中,同一款AMD显卡在Mantle模式的《Star Swarm》中的平均帧数可以比Direct3D模式下的领先15FPS,例如R9 290X就从50FPS的级别跳升至65FPS级别,提升幅度非常大。
不过从Direct3D的成绩上来看,AMD阵营显卡的表现不是特别理想,不仅R9 290X/290的成绩比GTX 780 Ti/780的落后10FPS,R9 280X/280的成绩甚至不如对手的GTX 760,我们对此进行了重复验证,结果仍然如此。我们只能说在《Star Swarm》中,AMD显卡并不适合Direct3D模式,有更高成绩的Mantle模式才是正确选择。
发展前景
以往的游戏优化技术,大都是在驱动程序或者是游戏画质设置上下功夫,但是无论怎么调教,游戏始终还是基于Direct3D图形API,即便显卡本身可以实现某些特性,让游戏的运行速度更快,但受限于Direct3D,这些特性可能无法完全发挥,毕竟Direct3D要从兼容性方面考虑,无法做到深入硬件的针对性优化。
但是AMD的Mantle不同,诚然其目前仅支持GCN架构的显卡平台,在兼容性上不如Direct3D,不过其可以实现硬件的针对性优化,可以完全发挥出GCN架构的全部特性,提升图形运算系统的整体效能,最大限度地发挥显卡的特性和性能,这点确实是Direct3D无法比拟的优势,也是Mantle有信心可以和Direct3D对抗的资本。
从我们的测试成绩可以看出,AMD的Mantle确实有优化游戏表现的作用,其可以在保持Direct3D版画质水平的同时,在一定程度上提升游戏的帧数表现,让游戏运行更加流畅。对于使用GCN架构显卡的游戏玩家来说,不用升级显卡、不改变游戏画质也能获得更高的游戏帧数,有什么能比这个更具吸引力呢?
值得一提的是,Direct3D以及OpenGL的未来发展方向基本上都是向Mantle靠拢,同样要走深入硬件进行优化的路线,只是要达到Mantle这样的整体掌控却仍然需要一段时间。而且有消息称,Direct3D 12也就是我们常说的DirectX 12最快也要到2015年才会登场,相比现在的Mantle API可能会有一些新的功能,但关键部分还得依靠AMD提供的API,业内甚至还有“DirectX 12本质上就是Mantle”的说法,下一代的OpenGL也就是OpenGL Next也会融入Mantle的技术,因此AMD的Mantle不仅仅是一个图形API或者是游戏优化技术那么简单,它的出现同时也推动了Direct3D和OpenGL的发展。
全国各地天气预报查询

上海市

  • 市辖区
  • 云南省

  • 临沧市
  • 云南省

  • 丽江市
  • 云南省

  • 保山市
  • 云南省

  • 大理白族自治州
  • 云南省

  • 德宏傣族景颇族自治州
  • 云南省

  • 怒江傈僳族自治州
  • 云南省

  • 文山壮族苗族自治州
  • 云南省

  • 昆明市
  • 云南省

  • 昭通市
  • 云南省

  • 普洱市
  • 云南省

  • 曲靖市
  • 云南省

  • 楚雄彝族自治州
  • 云南省

  • 玉溪市
  • 云南省

  • 红河哈尼族彝族自治州
  • 云南省

  • 西双版纳傣族自治州
  • 云南省

  • 迪庆藏族自治州
  • 内蒙古自治区

  • 乌兰察布市
  • 内蒙古自治区

  • 乌海市
  • 内蒙古自治区

  • 兴安盟
  • 内蒙古自治区

  • 包头市
  • 内蒙古自治区

  • 呼伦贝尔市
  • 内蒙古自治区

  • 呼和浩特市
  • 内蒙古自治区

  • 巴彦淖尔市
  • 内蒙古自治区

  • 赤峰市
  • 内蒙古自治区

  • 通辽市
  • 内蒙古自治区

  • 鄂尔多斯市
  • 内蒙古自治区

  • 锡林郭勒盟
  • 内蒙古自治区

  • 阿拉善盟
  • 北京市

  • 市辖区
  • 吉林省

  • 吉林市
  • 吉林省

  • 四平市
  • 吉林省

  • 延边朝鲜族自治州
  • 吉林省

  • 松原市
  • 吉林省

  • 白城市
  • 吉林省

  • 白山市
  • 吉林省

  • 辽源市
  • 吉林省

  • 通化市
  • 吉林省

  • 长春市
  • 四川省

  • 乐山市
  • 四川省

  • 内江市
  • 四川省

  • 凉山彝族自治州
  • 四川省

  • 南充市
  • 四川省

  • 宜宾市
  • 四川省

  • 巴中市
  • 四川省

  • 广元市
  • 四川省

  • 广安市
  • 四川省

  • 德阳市
  • 四川省

  • 成都市
  • 四川省

  • 攀枝花市
  • 四川省

  • 泸州市
  • 四川省

  • 甘孜藏族自治州
  • 四川省

  • 眉山市
  • 四川省

  • 绵阳市
  • 四川省

  • 自贡市
  • 四川省

  • 资阳市
  • 四川省

  • 达州市
  • 四川省

  • 遂宁市
  • 四川省

  • 阿坝藏族羌族自治州
  • 四川省

  • 雅安市
  • 天津市

  • 市辖区
  • 宁夏回族自治区

  • 中卫市
  • 宁夏回族自治区

  • 吴忠市
  • 宁夏回族自治区

  • 固原市
  • 宁夏回族自治区

  • 石嘴山市
  • 宁夏回族自治区

  • 银川市
  • 安徽省

  • 亳州市
  • 安徽省

  • 六安市
  • 安徽省

  • 合肥市
  • 安徽省

  • 安庆市
  • 安徽省

  • 宣城市
  • 安徽省

  • 宿州市
  • 安徽省

  • 池州市
  • 安徽省

  • 淮北市
  • 安徽省

  • 淮南市
  • 安徽省

  • 滁州市
  • 安徽省

  • 芜湖市
  • 安徽省

  • 蚌埠市
  • 安徽省

  • 铜陵市
  • 安徽省

  • 阜阳市
  • 安徽省

  • 马鞍山市
  • 安徽省

  • 黄山市
  • 山东省

  • 东营市
  • 山东省

  • 临沂市
  • 山东省

  • 威海市
  • 山东省

  • 德州市
  • 山东省

  • 日照市
  • 山东省

  • 枣庄市
  • 山东省

  • 泰安市
  • 山东省

  • 济南市
  • 山东省

  • 济宁市
  • 山东省

  • 淄博市
  • 山东省

  • 滨州市
  • 山东省

  • 潍坊市
  • 山东省

  • 烟台市
  • 山东省

  • 聊城市
  • 山东省

  • 菏泽市
  • 山东省

  • 青岛市
  • 山西省

  • 临汾市
  • 山西省

  • 吕梁市
  • 山西省

  • 大同市
  • 山西省

  • 太原市
  • 山西省

  • 忻州市
  • 山西省

  • 晋中市
  • 山西省

  • 晋城市
  • 山西省

  • 朔州市
  • 山西省

  • 运城市
  • 山西省

  • 长治市
  • 山西省

  • 阳泉市
  • 广东省

  • 东莞市
  • 广东省

  • 中山市
  • 广东省

  • 云浮市
  • 广东省

  • 佛山市
  • 广东省

  • 广州市
  • 广东省

  • 惠州市
  • 广东省

  • 揭阳市
  • 广东省

  • 梅州市
  • 广东省

  • 汕头市
  • 广东省

  • 汕尾市
  • 广东省

  • 江门市
  • 广东省

  • 河源市
  • 广东省

  • 深圳市
  • 广东省

  • 清远市
  • 广东省

  • 湛江市
  • 广东省

  • 潮州市
  • 广东省

  • 珠海市
  • 广东省

  • 肇庆市
  • 广东省

  • 茂名市
  • 广东省

  • 阳江市
  • 广东省

  • 韶关市
  • 广西壮族自治区

  • 北海市
  • 广西壮族自治区

  • 南宁市
  • 广西壮族自治区

  • 崇左市
  • 广西壮族自治区

  • 来宾市
  • 广西壮族自治区

  • 柳州市
  • 广西壮族自治区

  • 桂林市
  • 广西壮族自治区

  • 梧州市
  • 广西壮族自治区

  • 河池市
  • 广西壮族自治区

  • 玉林市
  • 广西壮族自治区

  • 百色市
  • 广西壮族自治区

  • 贵港市
  • 广西壮族自治区

  • 贺州市
  • 广西壮族自治区

  • 钦州市
  • 广西壮族自治区

  • 防城港市
  • 新疆维吾尔自治区

  • 乌鲁木齐市
  • 新疆维吾尔自治区

  • 伊犁哈萨克自治州
  • 新疆维吾尔自治区

  • 克孜勒苏柯尔克孜自治州
  • 新疆维吾尔自治区

  • 克拉玛依市
  • 新疆维吾尔自治区

  • 博尔塔拉蒙古自治州
  • 新疆维吾尔自治区

  • 吐鲁番市
  • 新疆维吾尔自治区

  • 和田地区
  • 新疆维吾尔自治区

  • 哈密市
  • 新疆维吾尔自治区

  • 喀什地区
  • 新疆维吾尔自治区

  • 塔城地区
  • 新疆维吾尔自治区

  • 巴音郭楞蒙古自治州
  • 新疆维吾尔自治区

  • 昌吉回族自治州
  • 新疆维吾尔自治区

  • 自治区直辖县级行政区划
  • 新疆维吾尔自治区

  • 阿克苏地区
  • 新疆维吾尔自治区

  • 阿勒泰地区
  • 江苏省

  • 南京市
  • 江苏省

  • 南通市
  • 江苏省

  • 宿迁市
  • 江苏省

  • 常州市
  • 江苏省

  • 徐州市
  • 江苏省

  • 扬州市
  • 江苏省

  • 无锡市
  • 江苏省

  • 泰州市
  • 江苏省

  • 淮安市
  • 江苏省

  • 盐城市
  • 江苏省

  • 苏州市
  • 江苏省

  • 连云港市
  • 江苏省

  • 镇江市
  • 江西省

  • 上饶市
  • 江西省

  • 九江市
  • 江西省

  • 南昌市
  • 江西省

  • 吉安市
  • 江西省

  • 宜春市
  • 江西省

  • 抚州市
  • 江西省

  • 新余市
  • 江西省

  • 景德镇市
  • 江西省

  • 萍乡市
  • 江西省

  • 赣州市
  • 江西省

  • 鹰潭市
  • 河北省

  • 保定市
  • 河北省

  • 唐山市
  • 河北省

  • 廊坊市
  • 河北省

  • 张家口市
  • 河北省

  • 承德市
  • 河北省

  • 沧州市
  • 河北省

  • 石家庄市
  • 河北省

  • 秦皇岛市
  • 河北省

  • 衡水市
  • 河北省

  • 邢台市
  • 河北省

  • 邯郸市
  • 河南省

  • 三门峡市
  • 河南省

  • 信阳市
  • 河南省

  • 南阳市
  • 河南省

  • 周口市
  • 河南省

  • 商丘市
  • 河南省

  • 安阳市
  • 河南省

  • 平顶山市
  • 河南省

  • 开封市
  • 河南省

  • 新乡市
  • 河南省

  • 洛阳市
  • 河南省

  • 漯河市
  • 河南省

  • 濮阳市
  • 河南省

  • 焦作市
  • 河南省

  • 省直辖县级行政区划
  • 河南省

  • 许昌市
  • 河南省

  • 郑州市
  • 河南省

  • 驻马店市
  • 河南省

  • 鹤壁市
  • 浙江省

  • 丽水市
  • 浙江省

  • 台州市
  • 浙江省

  • 嘉兴市
  • 浙江省

  • 宁波市
  • 浙江省

  • 杭州市
  • 浙江省

  • 温州市
  • 浙江省

  • 湖州市
  • 浙江省

  • 绍兴市
  • 浙江省

  • 舟山市
  • 浙江省

  • 衢州市
  • 浙江省

  • 金华市
  • 海南省

  • 三亚市
  • 海南省

  • 三沙市
  • 海南省

  • 儋州市
  • 海南省

  • 海口市
  • 海南省

  • 省直辖县级行政区划
  • 湖北省

  • 十堰市
  • 湖北省

  • 咸宁市
  • 湖北省

  • 孝感市
  • 湖北省

  • 宜昌市
  • 湖北省

  • 恩施土家族苗族自治州
  • 湖北省

  • 武汉市
  • 湖北省

  • 省直辖县级行政区划
  • 湖北省

  • 荆州市
  • 湖北省

  • 荆门市
  • 湖北省

  • 襄阳市
  • 湖北省

  • 鄂州市
  • 湖北省

  • 随州市
  • 湖北省

  • 黄冈市
  • 湖北省

  • 黄石市
  • 湖南省

  • 娄底市
  • 湖南省

  • 岳阳市
  • 湖南省

  • 常德市
  • 湖南省

  • 张家界市
  • 湖南省

  • 怀化市
  • 湖南省

  • 株洲市
  • 湖南省

  • 永州市
  • 湖南省

  • 湘潭市
  • 湖南省

  • 湘西土家族苗族自治州
  • 湖南省

  • 益阳市
  • 湖南省

  • 衡阳市
  • 湖南省

  • 邵阳市
  • 湖南省

  • 郴州市
  • 湖南省

  • 长沙市
  • 甘肃省

  • 临夏回族自治州
  • 甘肃省

  • 兰州市
  • 甘肃省

  • 嘉峪关市
  • 甘肃省

  • 天水市
  • 甘肃省

  • 定西市
  • 甘肃省

  • 平凉市
  • 甘肃省

  • 庆阳市
  • 甘肃省

  • 张掖市
  • 甘肃省

  • 武威市
  • 甘肃省

  • 甘南藏族自治州
  • 甘肃省

  • 白银市
  • 甘肃省

  • 酒泉市
  • 甘肃省

  • 金昌市
  • 甘肃省

  • 陇南市
  • 福建省

  • 三明市
  • 福建省

  • 南平市
  • 福建省

  • 厦门市
  • 福建省

  • 宁德市
  • 福建省

  • 泉州市
  • 福建省

  • 漳州市
  • 福建省

  • 福州市
  • 福建省

  • 莆田市
  • 福建省

  • 龙岩市
  • 西藏自治区

  • 山南市
  • 西藏自治区

  • 拉萨市
  • 西藏自治区

  • 日喀则市
  • 西藏自治区

  • 昌都市
  • 西藏自治区

  • 林芝市
  • 西藏自治区

  • 那曲市
  • 西藏自治区

  • 阿里地区
  • 贵州省

  • 六盘水市
  • 贵州省

  • 安顺市
  • 贵州省

  • 毕节市
  • 贵州省

  • 贵阳市
  • 贵州省

  • 遵义市
  • 贵州省

  • 铜仁市
  • 贵州省

  • 黔东南苗族侗族自治州
  • 贵州省

  • 黔南布依族苗族自治州
  • 贵州省

  • 黔西南布依族苗族自治州
  • 辽宁省

  • 丹东市
  • 辽宁省

  • 大连市
  • 辽宁省

  • 抚顺市
  • 辽宁省

  • 朝阳市
  • 辽宁省

  • 本溪市
  • 辽宁省

  • 沈阳市
  • 辽宁省

  • 盘锦市
  • 辽宁省

  • 营口市
  • 辽宁省

  • 葫芦岛市
  • 辽宁省

  • 辽阳市
  • 辽宁省

  • 铁岭市
  • 辽宁省

  • 锦州市
  • 辽宁省

  • 阜新市
  • 辽宁省

  • 鞍山市
  • 重庆市

  • 重庆市

  • 市辖区
  • 陕西省

  • 咸阳市
  • 陕西省

  • 商洛市
  • 陕西省

  • 安康市
  • 陕西省

  • 宝鸡市
  • 陕西省

  • 延安市
  • 陕西省

  • 榆林市
  • 陕西省

  • 汉中市
  • 陕西省

  • 渭南市
  • 陕西省

  • 西安市
  • 陕西省

  • 铜川市
  • 青海省

  • 果洛藏族自治州
  • 青海省

  • 海东市
  • 青海省

  • 海北藏族自治州
  • 青海省

  • 海南藏族自治州
  • 青海省

  • 海西蒙古族藏族自治州
  • 青海省

  • 玉树藏族自治州
  • 青海省

  • 西宁市
  • 青海省

  • 黄南藏族自治州
  • 黑龙江省

  • 七台河市
  • 黑龙江省

  • 伊春市
  • 黑龙江省

  • 佳木斯市
  • 黑龙江省

  • 双鸭山市
  • 黑龙江省

  • 哈尔滨市
  • 黑龙江省

  • 大兴安岭地区
  • 黑龙江省

  • 大庆市
  • 黑龙江省

  • 牡丹江市
  • 黑龙江省

  • 绥化市
  • 黑龙江省

  • 鸡西市
  • 黑龙江省

  • 鹤岗市
  • 黑龙江省

  • 黑河市
  • 黑龙江省

  • 齐齐哈尔市